package com.kitty.mybatis.mybatisv1.executor.statement;

import com.kitty.mybatis.mybatisv1.mapping.KittyBoundSql;

import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.List;

/**
 * @Description
 * @Author SHEN
 * @Date 2020/11/1
 */
public interface KittyStatementHandler {

    //准备语句
    Statement prepare(Connection connection)
            throws SQLException;
    //参数化
    void parameterize(Statement statement)
            throws SQLException;

    //select-->结果给ResultHandler
    <E> List<E> query(Statement statement)
            throws SQLException;

    //得到绑定sql
    KittyBoundSql getBoundSql();

}
